昨天我們認識了 Router 和 Gateway。
大概知道資料如果要離開自己家,要先走哪個大門。
但今天又出現一個問題。
平常上網時,好像很少直接輸入 IP。
我不會在瀏覽器打:
142.250.xxx.xxx
通常只會輸入:
google.com
那電腦到底怎麼知道:
google.com 住在哪?
這時候就要請出今天的主角:
DNS(Domain Name System)
我目前把 DNS 想成網路世界的電話簿。
人類比較擅長記名字,例如:
google.com
ithelp.ithome.com.tw
youtube.com
但電腦在網路上傳資料,最後還是需要知道對方的 IP Address。
所以 DNS 做的事情很像:
「請問 google.com 的地址是多少?」
然後 DNS 回答:
「它的 IP 大概是這個。」
接著瀏覽器才知道資料要送去哪裡。
如果沒有 DNS,上網可能會變成這樣:
「欸你要不要去看 iT 邦幫忙?」
「好啊,網址是什麼?」
「不是網址,是 IP,請輸入 xxx.xxx.xxx.xxx。」
光想就覺得累。
所以 DNS 其實讓我們不用背一堆數字,只要記住比較好懂的網域名稱。
Windows 可以打開命令提示字元,輸入:
nslookup google.com
你可能會看到一個或多個 IP。
Linux / macOS 也可以用:
dig google.com
或是:
nslookup google.com
查完之後,我發現一件事:
同一個網站不一定只有一個 IP。
這是因為大型網站可能有很多伺服器,也可能會依照地區、負載狀況,把使用者導到不同地方。
所以今天先不用背結果。
重點是知道:
網域名稱要先透過 DNS 查到 IP,電腦才知道該去哪裡。
DNS 聽起來很普通,但其實很重要。
因為很多釣魚網站,就是利用「名字看起來很像」來騙人。
例如:
google.com
和:
g00gle.example.com
第一眼可能很像,但其實不是同一個地方。
所以之後在看可疑網址時,我們不能只看它「長得像不像」,還要學會看真正的網域是哪一段。
所以現在我們已經知道:
我家在哪、資料怎麼出門、網站名字怎麼變成 IP。
但明天要來看一個更像「窗戶」的東西。
同一台電腦為什麼可以同時開網頁、玩遊戲、聽音樂?
它們到底是從哪一扇窗進出的?
Day 5,我們來認識:Port。